home *** CD-ROM | disk | FTP | other *** search
/ Run Magazine ReRun 1985 Fall / rerun-1985-fall.d64 / big letters (.txt) < prev    next >
Commodore BASIC  |  2022-09-20  |  3KB  |  90 lines

  1. 10 rem: c-64 big letter editor
  2. 20 rem: written by jim bernard
  3. 30 forx=28643to28842:reada:pokex,a:tt=tt+a:next
  4. 40 iftt<>20528thenprint"check data for error(s)":end
  5. 50 gosub410
  6. 60 poke52,48:poke56,48:poke56334,peek(56334)and254:poke1,peek(1)and251
  7. 70 fori=0to511:pokei+12288,peek(i+53247):next
  8. 75 fori=0to207:pokei+10000,peek(i+53255):next
  9. 80 fori=0to71:pokei+10208,peek(i+53639):next
  10. 85 fori=0to39:pokei+10280,peek(i+53527):next
  11. 90 fori=0to31:pokei+10320,peek(i+53584):next
  12. 95 fori=0to7:pokei+10352,peek(i+53615):next
  13. 100 fori=0to7:pokei+10360,peek(i+53503):next
  14. 105 fori=0to7:pokei+10368,peek(i+53751):next
  15. 110 fori=0to7:pokei+10376,peek(i+53911):next
  16. 115 sys28672
  17. 120 poke1,peek(1)or4
  18. 130 poke56334,peek(56334)or1
  19. 140 poke53272,28:printchr$(147):t=0:goto160
  20. 150 poke53272,21:end
  21. 160 lw=1024:ly=lw+1:lx=lw+40:lz=lw+41:t=1024
  22. 170 getp$:ifp$=""then170
  23. 171 ifasc(p$)=64thengosub290:goto170
  24. 172 ifasc(p$)>48andasc(p$)<58then193
  25. 173 ifasc(p$)>64andasc(p$)<91then192
  26. 174 ifasc(p$)>34andasc(p$)<40then195
  27. 175 ifasc(p$)>41andasc(p$)<47then200
  28. 176 ifasc(p$)=32then205
  29. 177 ifasc(p$)=63then210
  30. 178 ifasc(p$)=211then215
  31. 179 ifasc(p$)=145thengosub270
  32. 180 ifasc(p$)=157thenlw=lw-2:lx=lx-2:ly=ly-2:lz=lz-2
  33. 181 iflw<tthen230
  34. 182 ifasc(p$)=17thengosub260
  35. 183 ifasc(p$)=29then230
  36. 184 ifasc(p$)=147then140
  37. 185 ifasc(p$)=19thent=0:goto160
  38. 186 ifasc(p$)=92thensys28651
  39. 187 ifasc(p$)=94thensys28647
  40. 188 ifasc(p$)=95thensys28643
  41. 189 ifasc(p$)=61thengosub280
  42. 190 ifasc(p$)=186then250
  43. 191 goto170
  44. 192 q=asc(p$):w=((q-65)*2)+64:goto220
  45. 193 q=asc(p$):w=((q-48)*2)+114:goto220
  46. 195 q=asc(p$):w=((q-35)*2)+134:goto220
  47. 200 q=asc(p$):w=((q-42)*2)+144:goto220
  48. 205 w=154:goto220
  49. 210 w=156:goto220
  50. 215 w=158:goto220
  51. 220 x=w+1:y=w+96:z=w+97
  52. 222 cl=peek(646):sc=54272:pokelw+sc,cl:pokelx+sc,cl:pokely+sc,cl:pokelz+sc,cl
  53. 225 pokelw,w:pokely,y:pokelx,x:pokelz,z
  54. 230 lw=lw+2:lx=lx+2:ly=ly+2:lz=lz+2
  55. 235 ifly>t+39thengosub260
  56. 240 goto170
  57. 250 poke214,22:end
  58. 260 t=t+80:lw=t:lx=lw+40:ly=lw+1:lz=lw+41
  59. 262 ift>1945thenpoke214,24:t=t-160:printchr$(17):goto260
  60. 265 return
  61. 270 t=t-80:lw=t:lx=lw+40:ly=lw+1:lz=lw+41:ift<1024thent=1104:goto270
  62. 275 return
  63. 280 fork=1to1500:next:return
  64. 290 open1,0:input#1,p$:close1:return
  65. 300 rem - data for machine language
  66. 310 data 238,134,2,96,238,32,208,96,238,33,208,96,0,24,173,3,112,105,8,141
  67. 320 data 3,112,201,0,208,3,238,4,112,162,0,189,16,39,72,74,74,74,74,168
  68. 330 data 185,155,112,157,0,50,157,1,50, 104,41,15,168,185,155,112,157,0,53,157
  69. 340 data 1,53,232,238,15,112,238,18,112,238,28,112,238,31,112,224,8,208,208,24
  70. 350 data 173,15,112,105,8,141,15,112,24,173,18,112,105,8,141,18,112,24,173,28
  71. 360 data 112,105,8,141,28,112,24,173,31,112,105,8,141,31,112,201,1,208,12,238
  72. 370 data16,112,238,19,112,238,29,112,238,32,112,173,32,112,201,56,240,3,76,240
  73. 380 data 111,169,0,141,15,112,141,28,112,169,1,141,18,112,141,31,112,169,50,141
  74. 390 data 16,112,141,19,112,169,53,141,29,112,141,32,112,169,16,141,3,112,169,39
  75. 400 data 141,4,112,96,0,3,12,15,48,51,60,63,192,195,204,207,240,243,252,255
  76. 410 printchr$(147):poke53280,7:poke53281,7:poke646,9
  77. 420 printspc(14)"[145]instructions"
  78. 430 print"_       changes print color."
  79. 440 print"\       changes screen color."
  80. 450 print"^       changes border color."
  81. 460 print"cursor or shift/cursor moves down or up one line, to column 1."
  82. 470 print"cursor left or right moves one space."
  83. 480 print"home or shift/clear operates as usual."
  84. 490 print"use the alphabet, numbers 1-9 or # $ % & ' + - , . ? * [211]"
  85. 495 print"use '@' + return for small letters."
  86. 500 print"use shift/@ to end on bottom line."
  87. 510 print"to proceed, press 'shift' key then wait 15 sec. until screen clears."
  88. 520 wait653,1,0
  89. 530 return
  90.